Strict CSP
Googleが推奨するContent Security Policy (CSP)の指定
https://csp.withgoogle.com/docs/strict-csp.html
github
Strict CSP
code:header
Content-Security-Policy:
object-src 'none';
script-src 'nonce-{random}' 'unsafe-inline' 'unsafe-eval' 'strict-dynamic' https: http:;
base-uri 'none';
report-uri <https://your-report-collector.example.com/>
各項目の意味
CSP: base-uri
Strict CSP関係なく絶対いれとけという項目らしい
なんで必要なのか #??
'none'を指定して
そもそも<base>を無効にし、相対pathを無効にするってこと?
CSP: script-srcの指定の意味
後方互換性を保ちつつ、できるだけ多くのbrowserで強いCSPを適用する
CSP LevelというのはbrowserのCSP対応のレベルのコトっぽい #??
CSP Level3
strict-dynamicに対応しているbrowserでは、以下の2つが適用される
nonce-{random}
ref ソースリスト
strict-dynamic
他は無視
CSP Level2
Level2に対応しているbrowserでは、以下が適用される
'nonce-{random}'
unsafe-eval
他は無視
それ以外
'unsafe-inline'
'unsafe-eval'
https: http:
CSP: object-src
Flashとかのやつ
基本的にnoneで良い
CSP: report-to(CSP: report-url)
これ指定してないと、思わず厳しくしすぎた時に気づけなさそうmrsekut.icon
#??
nonce-{random}てなに
strict-dynamic
unsafe-evalってなに
unsafe-inlineってなに